﻿Public Class TaahhutCizelgesiIsyeri : Inherits ProcessReport

	Public Yil As Integer
	Dim Rsg, Rst As Recordset

	Public Overrides Sub GenericEvent(ByVal e As ProcessEventArgs)
		Select Case e.EventType
			Case EventType.Initialize
				Start("İşyeri taahhüt çizelgesi", "İşyeri bilgisini girin.")
				AddIsyeri()
			Case EventType.Shown
				If Not Arguments.ContainsKey("isyerino") Then Exit Sub
				SetValues("Isyeri", Arguments("isyerino"))
				ValidateForm()
			Case EventType.ValidateForm
				Rsg = Hukuk.Taahhut.GenelIsyeriOku(Local, Input("Isyeri"))
				If Check("Isyeri", Rsg.EOF, "Bu işyeri aftan yararlandırılmadı.") Then Exit Sub
				e.Result = True
			Case EventType.CoverPage
				Dim Rs As Recordset = Isyeri.IsyeriNoAra(Local, Input("Isyeri"))
				Report.PrintDocHeader("TAAHHÜTNAME")
				Report.FontSize = "-"
				Report.PrintParagraph("İşbu taahhütname, aşağıda evsafı verilen işyeri ile Sosyal Sigortalar Dairesi arasında akdedilmektedir.")
				Report.PrintParagraph("Bu taahhütname ile işyeri sahibi sigortalı, 90. maddeye göre Daire'ye prim ve gecikme zammı borçlarını ekte verilen tarihlerde taksitlerle ödeyecektir.")
				Report.PrintParagraph("a) Borçlu işveren en son yaptığı tarihten kendisi ve çalışanları ile ilgili tüm borçlu olduğu dönemlere ait bordroları Daire'ye sunmaktadır.")
				Report.PrintParagraph("b) İşveren güncel primlerini zamanında yatırıp, borçlu olduğu dönemlere ait prim ve gecikme zamlarını Daire'nin yaptığı takvimlendirmeye göre ödeme tarihlerinde ödemeyi taahhüt eder.")
				Report.PrintParagraph("c) İşveren takvimlendirmeye uymadığı takdirde, güncel primlerinin tahsiline devam edilmeyecek ve yasal işlem başlatılacaktır.")
				Report.PrintParagraph("d) Taahhütlerine uyduğu takdirde işverene ve çalışanlarına kısa vadeli menfaatleri verilecek ve uzun vadeli menfaatleri borcun hitamına kadar verilmeyecektir.")
				Report.SkipLine()
				Report.SetColumns("", "1;7", "l;l", "-")
				Report.Print("<cs=2><b>Taahhüt eden")
				Report.Print("Adı soyadı", ": ...............................................")
				Report.Print("İmza", ": ...............................................")
				Report.Print("Sicil no.", ": ...............................................")
				Report.Print("Sigortalı no.", ": ...............................................")
				Report.Print("Kimlik no.", ": ...............................................")
				Report.Print("Telefon no.", ": ...............................................")
				Report.Print("Tarih.", ": ...............................................")
				Report.SetColumns("", "4;1;3", "l;l;l", "-")
				Report.Print("", "<cs=2><b>Şahit")
				Report.Print("", "Adı soyadı", ": ...............................................")
				Report.Print("", "İmza", ": ...............................................")
				Report.Print("", "Kimlik no.", ": ...............................................")
				Report.SetColumns("", "1;7", "l;l", "-")
				Report.Print("<cs=2><b>Daire adına")
				Report.Print("Adı soyadı", ": ...............................................")
				Report.Print("İmza", ": ...............................................")
				Report.Print("Görevi", ": ...............................................")
				Report.PrintFlexible()
				Report.PrintDocFooter()
				Report.EndPage()
			Case EventType.PageHeader
				Report.SetColumns("Bordro Tar.;Bordro;Anapara;Ceza;Toplam;Öde.Tar.", "2;1;2;2;2;2", "d;c;m;m;m;d", "--")
			Case EventType.ReportDetail
				Rs = Hukuk.Taahhut.TaksitIsyeriOku(Local, Input("Isyeri"))
				For Each Row In Rs
					Report.Print(Rs("bordrotar"), Rs("bordro"), Rs("anapara"), Rs("ceza"), Rs("anapara") + Rs("ceza"), Rs("odetar"))
				Next
				If Not Rs.Count = 0 Then Report.PrintTotal("", "", Rs.Sum("anapara"), Rs.Sum("ceza"), Rs.Sum("anapara") + Rs.Sum("ceza"), DBNull.Value)
		End Select
	End Sub

End Class
